home *** CD-ROM | disk | FTP | other *** search
- Info-Kermit Digest Tue, 18 Feb 1992 Volume 15 : Number 2
-
-
- Today's Topic:
-
- Announcing C-Kermit 5A BETA
-
-
- Digest submissions may be sent to Info-Kermit@WATSUN.CC.COLUMBIA.EDU or
- KERMIT@CUVMA.BITNET. Requests for addition to or deletion from the
- Info-Kermit subscriber list should be sent to LISTSERV@CUVMA.BITNET or
- LISTSERV@CUVMA.CC.COLUMBIA.EDU. These messages must be of the form:
-
- SUBSCRIBE I-KERMIT <your-personal-name> (To start a subscription)
- UNSUBSCRIBE I-KERMIT (To cancel a subscription)
- REGISTER I-KERMIT <your-personal-name> (To correct your name)
-
- Kermit files may be obtained over networks and by mail order. On the
- Internetwork, use FTP to log in to host WATSUN.CC.COLUMBIA.EDU, a SUN-4/280
- running UNIX (SUNOS 4.1), IP host number 128.59.39.2. Login as user anonymous
- (note, lower case), any password, and GET or MGET (MULTIPLE GET) the desired
- files. The Kermit files are in directories kermit/a, kermit/b, kermit/c,
- kermit/d, and kermit/e. Test versions are in kermit/test. All files in these
- directories should be transferred in text (ASCII) mode. Binaries are in
- kermit/bin (use ftp in binary mode). You can also get Kermit files over the
- BITNET/EARN network; to get started send a message with text HELP to KERMSRV,
- the Kermit file server, at host CUVMA. For detailed instructions, read the
- file kermit/a/aanetw.hlp (AANETW.HLP on KERMSRV). To order by mail, request a
- complete list of Kermit versions and an order form from Kermit Distribution,
- Columbia University Center for Computing Activities, 612 West 115th Street,
- New York, NY 10025 USA.
-
- ----------------------------------------------------------------------
-
- Date: Sat, 8 Feb 92 23:31:00 EST
- From: Christine M Gianone <cmg@watsun.cc.columbia.edu>
- Subject: Announcing C-Kermit 5A BETA
- Keywords: C-Kermit 5A, UNIX Kermit, VAX/VMS Kermit, Amiga Kermit
- Keywords: Atari ST Kermit, OS/2 Kermit, OS-9 Kermit
- Keywords: Sliding Windows, Script Programming, International Character Sets
- Keywords: TCP/IP and C-Kermit
- Xref: Commodore Amiga, See Amiga
-
- We are very pleased to announce the availability of C-Kermit version 5A,
- edit 179, for public Beta testing. Over three years in the making, C-Kermit
- 5A was written by Frank da Cruz of Columbia University with contributions
- from hundreds of other programmers all over the world. Its major new
- features include:
-
- ADVANCED KERMIT FILE TRANSFER PROTOCOL
-
- Sliding window packet protocol, up to 31 window slots, for improved
- efficiency, especially on connections with long delays (public networks,
- satellites, etc). The maximum packet size has been increased to 9024.
- Sliding windows and long packets can be used together. Using combinations
- of long packets and sliding windows, file transfer efficiencies up to about
- 95% can be achieved (and more when Kermit can compress the data).
-
- CHARACTER-SET TRANSLATION
-
- C-Kermit translates character sets during text-file transfer and terminal
- emulation. Most Roman-alphabet-based character sets are supported, as well
- as Cyrillic character sets and Japanese Kanji. A new locking-shift
- mechanism is provided for efficient transfer of Kanji and other
- predominantly 8-bit character sets in the 7-bit communication environment.
-
- SCRIPT LANGUAGE PROGRAMMING
-
- C-Kermit now has a powerful and easy-to-use script programming language
- similar to MS-DOS Kermit's. Write script programs to automate your logins,
- interact automatically with remote computers or services, and even run your
- scripts late at night, unattended, when phone rates are lower and networks
- less congested.
-
- NETWORK SUPPORT
-
- On UNIX computers that have Berkeley Sockets libraries and a TCP/IP
- connection, and on VAX/VMS systems with TGV MultiNet, C-Kermit now can make
- TCP/IP TELNET connections. Unlike regular TELNET, C-Kermit brings its
- script language capabilities and character-set translation ability to the
- Internet world. And unlike FTP, C-Kermit can translate text file character
- sets as part of the file transfer process. On SUN computers with SunLink
- X.25, X.25 connections are also supported.
-
- SYSTEMS SUPPORTED BY C-KERMIT
-
- C-Kermit 5A is available for the following platforms:
-
- - Most known variations of UNIX including V7, 2.x BSD, 4.x BSD, AT&T
- System III and System V R2, R3, and R4, POSIX, Ultrix, SUNOS, NeXT OS, AIX,
- HP-UX, DGUX, IRIX, SCO XENIX, DNIX, UMAX, RTU, DYNIX, PTX, etc, etc, on
- hardware platforms of all makes, models, sizes, and shapes
- - VAX/VMS, including a completely new RMS interface
- - OS/2 1.3 and 2.0
- - Commodore Amiga
- - Atari ST
- - OS-9
-
- Full ANSI C and/or POSIX compliance can be selected.
-
- OTHER NEW FEATURES
-
- Kermit File Transfer Protocol:
- Packet lengths shrink and grow dynamically based on the quality of the
- connection.
- Even, Odd, or Mark parity is detected automatically during packet
- operations.
- Low-level packet readers and writers recoded for increased efficiency.
- File transfer performance improvements (see below)
- Transfer of files with international character set translation (see below)
- Sending and recognition of file attribute (A) packets:
- File size, creation date, file type, character set, system ID.
- Incoming file's creation date set from Attribute packet.
- Control of use of attributes via SET ATTRIBUTES.
- Automatic entry into binary or text mode when receiving files that specify
- the file type in the attribute packet.
- New MSEND command to send a list of files ("msend foo.* dir/*.c aaa bbb")
- New MAIL and REMOTE PRINT commands (work in both directions).
- SET FILE COLLISION { APPEND, BACKUP, DISCARD, OVERWRITE, RENAME, UPDATE }
- REMOTE SET commands are now supported in both directions.
- REMOTE LOGIN, LOGOUT, and KERMIT commands (client end only).
- GET, BYE, FINISH, REMOTE commands now work in both local & remote modes.
- SET ATTRIBUTES ON/OFF can be used to enable/disable attribute packets.
- DISABLE and ENABLE commands to control client access to server functions.
- Ability to read packets without terminators, based on length field.
- Printable start-of-packet character now supported.
- Packet buffers allocated dynamically, overall size specifiable by user.
- Ability to run external protocols.
- Increased maximum number of files that can be sent in a single operation.
-
- Non-Error-Checked File Transfer:
- New TRANSMIT command for uploading text files, complete with character
- set translation and many other options via SET/SHOW TRANSMIT.
- LOG SESSION for downloading text files or capturing other screen data,
- complete with character-set translation and TEXT/BINARY mode selection.
-
- Command parser:
- Expansion of variables and functions in commands (see below).
- Partial as well as full completion of filenames.
- Improved error and help messages.
- Commands in progress can be interrupted, with return to prompt.
-
- Macros and variables, compatible with MS-DOS Kermit:
- DEFINE macros and variables.
- ASSIGN variable's current value to another variable.
- INCREMENT and DECREMENT numeric variables by 1 (or any other number).
- Execute macros using DO or just by giving their name.
- Arguments are passed as parameters \%1..\%9
- Global variables \%a..\%z (and others).
- Access to environment variables via \$(name).
- Access to builtin Kermit named variables via \v(name), e.g. \v(date).
- Long variable names: \m(name).
- Backslash notation for numbers and characters as in MS-DOS Kermit.
- Dynamically allocated space for macro names and definitions.
- Variables and backslash codes in all commands are fully expanded.
-
- And beyond MS-DOS Kermit (at least for now!):
- Built-in string and arithmetic functions.
- User-defined functions.
- Arrays.
-
- Script programming language, mostly compatible with MS-DOS Kermit:
- INPUT, OUTPUT, REINPUT, PAUSE, GOTO, IF, ASK, ASKQ, ECHO, STOP, END,
- GETOK, and other new commands.
- INPUT, PAUSE, and WAIT interruptible from keyboard.
- SET INPUT, SET TAKE, SET MACRO, SET SCRIPT commands to control echoing,
- error handling.
- WRITE <log> <string>.
- OPEN, READ, WRITE/APPEND, and CLOSE local files.
- FOR and WHILE loops, which may be nested.
- BREAK and CONTINUE allowed in FOR and WHILE loops.
- Trailing comments ; like this one, allowed in all contexts.
- Command line continuation using hyphen (-) or backslash (\).
- Relaxed prefixing rules; backslashes no longer doubled.
- Conditional branching or execution of commands via IF. The IF command:
- May have an ELSE part.
- IF NOT can be used to reverse the truth of the following condition.
- IF <, IF =, IF > for numeric variables.
- IF EQUAL, LLT, LGT for string comparison.
- IF NUMERIC for checking numbers.
- IF COUNT for looping.
- IF EXIST for files.
- IF DEFINED for variable and macro names.
- IF SUCCESS, IF FAILURE based on success of previous command.
- Extended IF statement (XIF) allows nested, compound parts.
-
- Terminal emulation:
- Key-mapping via SET KEY command
- SET TERMINAL CHARACTER-SET
- SET TERMINAL LOCKING-SHIFT
- SET TERMINAL NEWLINE-MODE
- Flexible session logging
- TELNET protocol
- New escape functions: Suspend, Shell, Send Long BREAK, etc
- Improved efficiency
-
- Other:
- Improved use of Xon/Xoff software flow control during file transfer.
- Ability to use RTS/CTS hardware flow control when host computer supports it.
- Ability to couple to external protocols via open file descriptor (UNIX).
- Many file-format-related options for VMS.
- Tilde-expansion in local UNIX filenames (~ = home directory).
- Ability to ask shell to expand wildcards ("send ck[cuw]*.{[cwh],{doc,ps}}").
- Alternative initialization filename specifiable on command line with -y.
- Kermit "application files" start Kermit automatically (UNIX only).
- Correct handling of Suspend interrupt (Ctrl-Z) in UNIXes with job control.
- New SUSPEND (Z) command.
- New TYPE command, interruptible by Ctrl-C.
- New PRINT command.
- New DELETE command.
- New RENAME command.
- Command synonyms added for compatibility with MS-DOS Kermit: RUN, PUSH, etc.
- And with UNIX: RM, LS, etc.
- And with VMS: SET/SHOW DEFAULT, SPAWN, @, etc
- SHOW command divided into SHOW FILE, SHOW PROTOCOL, SHOW COMMUNICATIONS, etc.
- SET SPEED no longer required with SET LINE - current speed used by default.
- 75/1200 Split-speed communication supported in some implementations.
- Improved control and monitoring of modem signals.
- Improved interaction with Hayes modems.
- Support for speed-matching modems.
- Support for many new modem types including Telebit, Microcom.
- New SET DIAL command controls: HANGUP, TIMEOUT, INIT-STRING, DISPLAY, etc.
- New REDIAL command.
- Compatibility with new and distributed (struct dirent) file systems.
- Improved use of UUCP lockfiles.
- Improved operation and security when run setuid/setgid on UNIX.
- Improved handling of disk-full and disk-write errors.
- More detailed and accurate statistics reporting.
- New debugging display available during CONNECT.
- Append mode available for all logs.
- Under UNIX, Kermit no longer appears "idle" while transferring files.
- Program exit status code now reflects protocol success/failure.
- EXIT n explicitly sets program's exit status code to n.
- Many new additions and improvements to UNIX makefile.
- Simplification and expansion of makefile configuration options.
- New documentation - user manual, man page, improved built-in help text.
- Many bugs fixed.
-
- ACKNOWLEDGEMENTS
-
- C-Kermit 5A has been a three-year cooperative effort involving hundreds of
- people in all parts of the world. It is not possible to list them all here
- (but we have tried to keep track of them in the documentation); here is a very
- much abbreviated list of just a few of the major designers, developers, and
- testers:
-
- Chris Adie, Edinburgh U, Scotland (OS/2 support)
- William Bader, Moravian College (VMS, mostly)
- Fuat Baran, formely of Columbia University (lots of help)
- Jim Barbour, U of Colorado
- Donn Baumbartner, Dell
- Jack Bryans, California State U at Long Beach
- Nelson Beebe, U of Utah
- John Chandler, Harvard U / Smithsonian Astronomical Observatory
- Joe R Doupnik, Utah State U (many, many things)
- Kristoffer Eriksson, Peridot Konsult AB, Oerebro, Sweden (many things)
- Marcello Frutig, Catholic University, Sao Paulo, Brazil (X.25 support)
- Hirofumi Fujii, Japan National Lab for High Energy Physics, Tokyo (Kanji)
- James Harvey, Indiana/Purdue U (VMS)
- Chuck Hedrick, Rutgers U
- Ron Heiby, Motorola
- Christian Hemsing, RWTH Aachen, Germany (OS-9)
- Mark Johnson, Apple Computer
- Luke Jones, AT&T
- Peter Jones, U of Quebec at Montreal (MIPS)
- Sergei Kartashoff, Inst. of Precise Mechanics & Computer Equipment, Moscow
- Howie Kaye, Columbia University (lots of help)
- Terry Kennedy, St Peter's College, Jersey City, NJ (VAX/VMS, 2.11 BSD)
- John Klensin, MIT (standards, sage advice)
- Bo Kullmar, Central Bank of Sweden, Kista, and ABC-Klubben (many things)
- Bob Larson, USC (OS-9 and more)
- Bert Laverman, Groningen University, Netherlands
- David MacKenzie, Environmental Defense Fund, University of Maryland
- Fulvio Marino, Olivetti, Ivrea, Italy
- Peter Mauzey, AT&T
- Bruce J Moore, Allen-Bradley Co, Highland Heights, OH (Atari ST)
- Andre Pirard, U of Liege, Belgium (character sets)
- Paul W Placeway, (formerly of) Ohio State U (Macintosh & more)
- Piet W Plomp, ICCE, Groningen University, Netherlands
- Manfred Prange, Oakland U (Coherent)
- Frank Prindle, NADC
- Alan Robiette, Oxford University, UK (VMS)
- Kai Uwe Rommel, Technische Universitaet Muenchen (OS/2)
- Larry Rosenman (Amiga)
- Jay S Rouman, U of Michigan
- Benn Schreiber, DEC
- Steven Schultz, Contel
- Gisbert W Selke, WIdO, Bonn, Germany
- Warren Tucker, Tridom Corp, Mountain Park, GA (many things)
- Konstantin Vinogradov, ICSTI, Moscow (Cyrillic and more)
- Stephen Walton, Calif State U, Northridge (Amiga)
- Jamie Watson, Switzerland (RS/6000)
- Ken Yap, formerly of the U of Rochester
- Michael Yaroslavtsev, Inst. Precise Mechanics & Computer Equipment, Moscow
-
- HOW TO GET IT
-
- C-Kermit 5A(179) BETA is available on the Internet via anonymous ftp from host
- watsun.cc.columbia.edu [128.59.39.2], using text (ASCII) mode, in the
- directory kermit/test, and on BITNET/EARN from host CUVMA through the KERMSRV
- file server, in the T: area. Warning: some files might have records longer
- than 80, making it impossible for KERMSRV to MAIL them to you.
-
- You can also order C-Kermit 5A on magnetic media (9-track tape, TK50
- cartridge, or quarter-inch tape cartridge) from Columbia University by mail
- order as "Tape T" (see the order form, kermit/a/aaxfly.doc or aaxfly.ps).
-
- The C-Kermit filenames all start with the letters "ck" (for C-Kermit). The
- third letter in the filename is used for grouping: c = Portable C, u =
- UNIX-specific, v = VAX/VMS-specific, etc. The following sections give
- brief synopses of the files you will need for each version. A detailed
- description of the file naming conventions and organization is given in the
- file ckaaaa.hlp. Notation:
-
- * = match any string of characters
- [abc] = match the single character a, b, or c
-
- ALL VERSIONS
-
- All C-Kermit versions include the files ckc*.c, ck*.h, and ckcpro.w. These
- files implement the Kermit file transfer protocol. The user manual is
- ckuker.doc (plain text), ckuker.ps (postscript). It applies to all
- versions, but (so far) includes system-specific information only for UNIX,
- VAX/VMS, OS/2, Amiga, and OS-9.
-
- THE UNIX VERSION
-
- UNIX sources: ck[cuw]*.[cwh]
- UNIX build: ckuker.mak (for 2.1xBSD, use ckubs2.mak)
- UNIX executable: (none, build from source code)
- UNIX doc: ckuker.doc, ckuker.ps
-
- To build the UNIX version, rename ckuker.mak (or ckubs2.mak) to makefile,
- read the comments at the top of the makefile to select the make-option
- appropriate for your computer, and then give the appropriate "make" command,
- for example "make bsd", "make sunos41", "make sys5r4", etc. Read the file
- ckuins.doc for further instructions and hints.
-
- There is also a compressed tar archive of the UNIX sources in
- kermit/bin/cku179.tar.Z, which you can ftp in BINARY mode: 595K.
-
- THE VAX/VMS VERSION
-
- This version is not quite finished. Work on an interrupt-driven
- communications I/O module is still in progress. However, the file system
- interface is more or less complete, and is quite advanced, thanks to endless
- and unenviable hours of work by Terry Kennedy of St Peter's College in New
- Jersey. The result is quite usable, provided you don't push the
- communications too hard (very long packets and/or big sliding window sizes),
- especially on small, slow, or old VAXes.
-
- A special feature of VMS C-Kermit 5A is called "labeled files", which allows
- VMS files of any type to be transmitted to a foreign system and then
- brought back to a VMS system with all their attributes and formats intact --
- or for that matter, between two VMS systems directly.
-
- VMS sources: ck[cuwv]*.[cwh], plus ckvcvt.c (labeled-file decoder)
- VMS build: ckvcdt.com plus ckvker.com (DCL), ckvker.mak (VMS MAKE),
- or ckvker.mms (DEC MMS)
- VMS executable: ckvker.hex, use ckvdeh.mar to decode it into .EXE format.
- VMS doc: ckuker.doc, ckuker.ps
-
- THE OS/2 VERSION
-
- C-Kermit was originally adapted to OS/2 by Chris Adie, of Edinburgh University
- in Scotland in 1988. Kai Uwe Rommel of the Technical University of Munich in
- Germany has brought Chris's version up to date and added many new features in
- the bargain. This program runs in an OS/2 window under both OS/2 1.3 and 2.0,
- performs VT102 emulation complete with key mapping, screen rollback, etc.
-
- OS/2 sources: ck[cuwo]*.[cwh], ckwart.def, ckoker.def
- OS/2 build: ckoker.mak
- OS/2 executable: ckoker.boo (unboo with ckbunb.c), kermit/bin/ckoker.exe
- OS/2 doc: ckuker.doc, ckuker.ps
-
- THE COMMODORE AMIGA VERSION
-
- The adaptation of C-Kermit 5A to the Amiga was handled by Steve Walton,
- California State University at Northridge. The original adaptation (for
- C-Kermit 4E) was done by Jack Rouse of the "Software Distillery" in 1986.
- The files are:
-
- Amiga sources: ck[cuwi]*.[cwh]
- Amiga build: ckiker.mak (use Aztec C V5.0b)
- Amiga executable: ckiker.boo, kermit/bin/ckiker.exe
- Amiga doc: ckuker.doc, ckuker.ps
-
- THE ATARI ST VERSION
-
- This one is hot off the press, just in from Bruce J Moore of Allen-Bradley
- Company in Highland Heights, Ohio. This is not a desktop application; it
- must be run under a character-mode shell like msh (which comes with Mark
- Williams C), gulam, ksh, or bash.
-
- Atari ST sources: ck[cuws]*.[cwh] (Mark Williams C)
- Atari build: cksker.mak
- Atari executable: cksker.boo (decode with ckbunb.c), kermit/bin/cksker.ttp
- Atari doc: cksker.bwr (more coming)
-
- THE OS-9 VERSION
-
- OS-9 is a UNIX variant from Microware Systems Corporation, designed mainly
- for the real-time processing environment, mostly on Motorola CPUs. C-Kermit
- 5A was adapted to OS-9/68K by Christian Hemsing, RWTH Aachen, Germany, and
- Bob Larson of the University of Southern California.
-
- OS-9 sources: ck[cuw9]*.[cwh]
- OS-9 build: ck9ker.mak or ck9ker.gcc
- OS-9 executable: (None, build from source code using cc or gcc)
- OS-9 doc: ckuker.doc, ckuker.ps
-
- OTHER VERSIONS
-
- Macintosh Kermit is not at BETA level yet. Much work remains to be done and
- is, in fact, underway at this moment. Announcements to come in forthcoming
- Info-Kermit Digest issues.
-
- Previous editions of C-Kermit were available for Apollo Aegis and Data General
- AOS/VS. The Aegis version appears to be pretty much dead; most people run
- a UNIX-like environment on Apollos now, under SR10. The Apollo SR10 UNIX
- environments are fully supported by the UNIX version.
-
- Work on updating the Data General AOS/VS support has recently begun. Watch
- this space for announcements.
-
- Anybody who might have plans to adapt C-Kermit to any other kind of system,
- please contact us first so we can keep all efforts coordinated.
-
- DOCUMENTATION
-
- Much of the documentation listed below needs additional work. Improved
- documentation will be announced as it becomes available.
-
- ckaaaa.hlp Explanation of file naming conventions
- ckaplm.doc C-Kermit "program logic manual"
- ckuker.ann This message
- ckuker.doc plain-text user manual, UNIX and VMS
- ckuker.ps Postscript user manual, UNIX and VMS
- ckuker.mss Scribe source for user manual + ckuhdr.mss
- ckuker.nr UNIX man page, NROFF source (NEEDS WORK!)
- ckuins.doc UNIX and VMS installation instructions, plain text
- ckuker.bwr UNIX and VMS "Beware file", plain text
- ckvker.bwr VAX/VMS-specific "beware file", plain text (mostly obsolete?)
- ckvker.hlp VAX/VMS help file, for VMS HELP command (needs updates)
- ckiker.bwr Amiga beware file
- ck9ker.bwr OS-9 beware file
- ckuker.upd C-Kermit program update history, plain text, BIG
-
- As you might guess from the contents of this message, C-Kermit has grown
- considerably in size and complexity since version 4E. Consequently, many of
- its features are now deselectable via feature-selection switches at compile
- time: network support, script programming language, character sets, etc. This
- is necessary when the target computer (or compiler or linker) does not have
- the capacity (memory or address space) to support this version in its full
- glory. The feature-removal techniques are documented in the file
- ckuins.doc, and the various build procudures (UNIX makefile, etc) show which
- (if any) features are removed from which versions. In most versions, the
- SHOW VERSION command also lists which features are present and which are
- absent.
-
- WHAT NEXT?
-
- As far as features are concerned, this is the end of C-Kermit 5A. Bugs will
- be fixed, support for various systems will be updated, and then it will
- replace version 4E(072) as the standard, supported, released version. New
- features will be added to future releases.
-
- Please report successes or failures to Frank da Cruz, FDCCU@CUVMA.BITNET
- or fdc@watsun.cc.columbia.edu.
-
- ------------------------------
-
- End of Info-Kermit Digest
- *************************
-